package com.example.picturebacked.common;

import com.example.picturebacked.exception.ErrorCode;

/**
 * 为了方便返回响应结果，封装BaseResponse
 */
public class ResultUtils {
    /**
     * 返回成功，获取成功码，成功信息，数据
     */
    public static <T> BaseResponse<T> success(T data) {
        return new BaseResponse<>(0, data, "ok");
    }

    /**
     * 错误返回，获取错误码，错误信息
     */
    public static <T> BaseResponse<T> error(ErrorCode errorCode) {
        return new BaseResponse<>(errorCode);
    }

    /**
     * 错误返回，自定义错误码，自定义错误信息
     */
    public static <T> BaseResponse<T> error(int code, String message) {
        return new BaseResponse<>(code, null, message);
    }

    /**
     * 错误返回,获取错误响应码，自定义错误信息
     */
    public static <T> BaseResponse<T> error(ErrorCode errorCode, String message) {
        return new BaseResponse<>(errorCode.getCode(), null, message);
    }
}
